package com.sisyphus.spinach.core;

import java.util.List;

public interface INetPageTask {

    interface Presenter<T, V extends View<T>> extends INetTask.Presenter<T, V> {
        /**
         * 请求刷新
         */
        void refresh();

        /**
         * 请求加载更多
         */
        void loadMore();

    }


    interface View<T> extends INetTask.View<T> {

        /**
         * 刷新数据
         */
        void renderRefresh(List<T> refreshData);


        /**
         * 加载更多数据
         */
        void renderLoadMore(List<T> loadMoreData);


        /**
         * 没有更多
         */
        void renderNoMore();


        /**
         * 空数据
         */
        default void empty(CharSequence charSequence) {

        }

    }

}
